Firewalls play a security role by blocking certain communications to/from a computer on a network. Typically, when a new network or device is connected to the computer, the firewall is manually configured to allow proper operation of the network or device. Manual configuration of firewalls is a technical task that can involve many steps and may be difficult or burdensome for computer users. Such manual configuration typically relies on a user to answer configuration questions and to understand underlying firewall configuration settings (e.g., ports and protocols). During manual configuration of the firewall, a personal computer (PC) user may improperly configure the firewall or completely disable the firewall. As a result, PC security may be diminished, resulting in the PC being more susceptible to network based attacks.
Firewalls typically assume a static machine-wide configuration. For example, a particular port may be opened for all network connections, and certain network connections may be specified as safe or unsafe. A typical firewall may be configured such that if a capability is present, the capability is desirable for all users regardless of individual user preferences.